草庐IT

Android ScrollView,在可见之前滚动

全部标签

javascript - 在从我的 promise /功能返回之前等待 forEach 完成

我正在使用FirebaseCloudFirestore,但是,我认为这可能更多是JavaScript异步与同步promise返回问题。我正在执行一个查询以从一个集合中获取ID,然后循环遍历该查询的结果以根据该ID从另一个集合中查找单个记录。然后我想将找到的每条记录存储到一个数组中,然后返回整个数组。results.length始终为0,因为returnresults在forEach完成之前触发。如果我从forEach内部打印results.length它有数据。我如何才能等到forEach完成后再从外部promise和外部函数本身返回?getFacultyFavoritesFireba

javascript - 如何在加载整个页面之前显示一个 jquery 对话框?

在我的网站上,许多操作可能需要很长时间才能完成。当我知道一个页面需要一段时间来加载时,我想在页面加载时显示一个进度指示器。理想情况下,我想说的是:$("#dialog").show("progress.php");并将该覆盖层放在正在加载的页面顶部(操作完成后消失)。编写进度条和显示进度不是问题,问题是在加载页面时弹出进度指示器。我一直在尝试为此使用JQuery的对话框,但它们仅在页面加载后出现。这一定是一个常见问题,但我对JavaScript不够熟悉,不知道最好的方法。这里有一个简单的例子来说明这个问题。在20秒暂停结束之前,下面的代码无法显示对话框。我在Chrome和Firefox

javascript - 如何判断是 "html"还是 "body"滚动窗口

下面的代码用于通过javascript查找可以滚动的元素(body或html)。varscrollElement=(function(tags){varel,$el,init;//iteratethroughthetags...while(el=tags.pop()){$el=$(el);//ifthescrollTopvalueisalready>0thenthiselementwillworkif($el.scrollTop()>0){return$el;}//ifscrollTopis0trytoscroll.elseif($el.scrollTop(1).scrollTop()

javascript - 如何让 AJAX get-request 在返回响应之前等待页面呈现?

我正在为thissite中的页面编写Greasemonkey脚本(站点1)。Site1有各种交易和报价,我的GM脚本旨在执行以下操作:当访问Site1上的报价时,脚本会查询Site2查明这家酒店是否也列在Site2上。如果是,则在Site1上显示Site2的搜索结果。问题是Site2显示一个进度条(“加载结果”),然后显示结果。因此我的Ajax请求总是返回空结果,看起来像这样(见红框部分):(Clickforlargerimage)但是,它实际上应该具有来自Site2的搜索结果的完整内容,如下所示:(Clickforlargerimage)我尝试了同步Ajax请求以及GM_xmlhtt

javascript - 如何在使用我自己的鼠标滚轮平滑滚动时缩放到鼠标指针?

我的应用程序的一部分包含类似于谷歌地图的功能,用户应该能够在容器内放大和缩小图像。与谷歌地图一样,我希望用户能够使用鼠标滚轮滚动,图像上的像素始终保持在鼠标指针的正下方。所以基本上用户将缩放到他们的鼠标指针所在的位置。对于缩放/平移,我正在使用这样的css转换:可见$('#image').css({'-moz-transform':'scale('+ui.value+')translate('+self.zoomtrans.xNew+'px,'+self.zoomtrans.yNew+'px)','-moz-transform-origin':self.zoomtrans.xImage

javascript - 滚动链接到 skrollr

我正在使用https://github.com/Prinzhorn/skrollr在我滚动时为我的网站背景制作动画。但是,我也想让我的链接像普通的单页网站一样在页面上上下滚动。问题是,如果我手动滚动背景变化,两者都可以正常工作,如果我单击链接,页面将滚动到正确的位置。问题是,当我单击按钮时,背景也不会滚动。我好像在使用两个不同的滚动函数,结果它们不能一起工作,我需要使用同一个。这是代码。js-滚动到链接:var$root=$('html,body');$('a').click(function(){varhref=$.attr(this,'href');$root.animate({s

javascript - 如何测试一个函数在另一个函数之前被调用

我有一些紧密耦合的遗留代码,我想用测试覆盖它们。有时确保一个模拟出的方法在另一个方法之前被调用很重要。一个简化的例子:functionPageManager(page){this.page=page;}PageManager.prototype.openSettings=function(){this.page.open();this.page.setTitle("Settings");};在测试中,我可以检查是否调用了open()和setTitle():describe("PageManager.openSettings()",function(){beforeEach(functi

javascript - 在 setInterval() 之前调用 clearInterval() 可以吗?

我有一段代码:if(someCondition){//clearglobTimerfirst??globTimer=setInterval(function(){someBlinkingCode;},1000);}else{clearInterval(globTimer);}但这部分代码可以多次调用,其中someCondition将为真。这意味着将创建多个间隔,而不是所有间隔都将被销毁。一段时间后,闪烁频率超过1秒,因此我添加了clearInterval(globTimer);而不是注释。此更改解决了我的问题,但此解决方案可以吗?是否可以为同一个变量多次调用clearInterval(

javascript - Selenium JavaScript - 将元素滚动到 View 中而不与标题重叠

webdriver.executeScript("arguments[0].scrollIntoView();",element);这会将元素滚动到View中,但它位于页面标题的后面。如何将元素滚动到View中,使元素位于标题正下方而不是标题后面? 最佳答案 scrollIntoView方法可以将元素滚动到View的顶部或底部,默认在顶部:https://developer.mozilla.org/en/docs/Web/API/Element/scrollIntoView因此您可以将其滚动到底部:webdriver.execute

javascript - 在运行应用程序并切换到路由或状态之前解析 $http 请求

我编写了一个应用程序,我需要在应用程序运行时检索当前登录的用户信息,然后再处理路由。我用ui-router支持多个/嵌套View并提供更丰富、有状态的路由。当用户登录时,他们可能会存储一个代表其身份验证token的cookie。我将该令​​牌包含在对服务的调用中以检索用户的信息,其中包括他们所属的组。然后将生成的身份设置在服务中,可以在服务中检索并在应用程序的其余部分中使用。更重要的是,路由器将使用该身份来确保他们已登录并属于适当的组,然后再将他们转换到请求的状态。我有这样的代码:app.config(['$stateProvider',function($stateProvider)